<p align="center">
  <img src="images/runny.png">
</p>

<h4 align="center">утилита, упрощающая разработку</h4>

<p align="center">
<img src="https://img.shields.io/badge/Powered By Rust-e43717?style=for-the-badge&logo=rust&logoColor=white"><br><img src="https://github.com/smokingplaya/runny/actions/workflows/release.yml/badge.svg">
</p>

# 🤔 Как это работает?

Runny это инструмент для командной строки, который запускает
заранее прописанные в рабочей среде команды (пресеты). 

[Пример сборки Rust-проекта.](./.runny/settings.yml)

```bash
runny # запускает Runny с пресетом "default"
runny test # запускает Runny с пресетом "test"
```

# 🛠️ Сборка

Вы сами можете собрать Runny.
Для этого вам необходим [Rust](https://rust-lang.org)
на вашем ПК.

```
cargo run
```

# 🛸 Список доступных командных оболочек

* PowerShell (powershell)
* Bash (bash)
* Windows CMD (cmd)
* ZSH (zsh)


# 🐼 Как настроить?

У вас есть условный проект - Web-сайт,
написанный на JS, работающий под Node.JS
В корневой папке вашего проекта необходимо создать
папку **.runny**, а в этой папке создать файл **settings.yml**,
куда позже вы будете вписывать настройки.

### 👩‍🦼 Первые шаги

Укажите [командную оболочку](#🛸-list-of-availiable-shells) в которой ваши команды будут выполняться:

```yaml
runner-default: bash # здесь команда будет выполняться через bash
```

### Настройте пресет

По-умолчанию, если вы запускаете **runny** без аргументов командной строки,
Runny запустит пресет с названием default.

```yaml
presets: # список пресетов
  default: # название пересета
    command: ls # запустит "ls"

  before-preset:
    command:
      - echo "<3"
      - echo "да, команд может быть несколько."

  # но если команд может быть несколько, то зачем run:after/before? я не знаю, лол)))0)) ну максимум для запуска других пресетов, а так дэб рулит...

  test:
    command: whoami # запустит whoami
    run: # команды/пресеты, которые будут запускаться до/после запуска команды из этого пресета.
      after: # запустит команду clear после запуска команды пресета | команды (даже если она одна) нужно писать как список.
        - clear
      before: before-preset # если писать не список, а строку, то Runny засчитает это как название пресета, и запустит его.
```

# 🐣 Вклад в развитие
ну типа джага джага, ждем пока GitVerse станет нормальной платформой 